home *** CD-ROM | disk | FTP | other *** search
/ Game Programming in C++ - Start to Finish / GameProgrammingS.iso / Peon / PeonSDK-Win32-1.0.0.exe / {app} / PeonMain / include / SceneLight.h < prev    next >
Encoding:
C/C++ Source or Header  |  2005-11-25  |  1.6 KB  |  63 lines

  1.  
  2. #ifndef __SCENELIGHT_H_
  3. #define __SCENELIGHT_H_
  4. /*
  5. Peon - Win32 Games Programming Library
  6. Copyright (C) 2002-2005 Erik Yuzwa
  7.  
  8. This library is free software; you can redistribute it and/or
  9. modify it under the terms of the GNU Library General Public
  10. License as published by the Free Software Foundation; either
  11. version 2 of the License, or (at your option) any later version.
  12.  
  13. This library is distributed in the hope that it will be useful,
  14. but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  16. Library General Public License for more details.
  17.  
  18. You should have received a copy of the GNU Library General Public
  19. License along with this library; if not, write to the Free
  20. Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  21.  
  22. Erik Yuzwa
  23. peon AT wazooinc DOT com
  24. */
  25.  
  26.  
  27. #include "ISceneObject.h"
  28. #include "Vector4.h"
  29.  
  30. namespace peon
  31. {
  32.     /**
  33.     * This object acts as a crude container for our lighting modes we wish
  34.     * to inject into the graphics pipeline. We just need to set a few properties,
  35.     * and feed it into the SceneRenderer to take effect.
  36.     */
  37.     class PEONMAIN_API SceneLight : public ISceneObject
  38.     {
  39.     public:
  40.         /** our ambient light setting */
  41.         Vector4 m_vecAmbient;
  42.  
  43.         /** our diffuse light setting */
  44.         Vector4 m_vecDiffuse;
  45.  
  46.         /** our light position..most often also the direction of the light*/
  47.         Vector4 m_vecDirection;
  48.  
  49.     public:
  50.         /**
  51.         * Constructor
  52.         */
  53.         SceneLight();
  54.  
  55.         /**
  56.         * Destructor
  57.         */
  58.         ~SceneLight();
  59.     };
  60. }
  61.  
  62. #endif
  63.